package com.songtech.utils;

import java.security.MessageDigest;

/**
 * Created with IntelliJ IDEA.
 * Description:生成JS-SDK权限验证的签名工具类
 *
 * @Author: rentie
 * @Date: 2018/5/25 13:41
 **/
public class SignUtil {

    public static String getJsSdkSign(String noncestr,String tsapiTicket,String timestamp,String url){
        String string1="jsapi_ticket="+tsapiTicket+"&noncestr="+noncestr+"&timestamp="+timestamp+"&url="+url;
        String signature =null;
        char hexDigits[] = {'0','1','2','3','4','5','6','7','8','9',
                'a','b','c','d','e','f'};
        try {
            MessageDigest mdTemp = MessageDigest.getInstance("SHA1");
            mdTemp.update(string1.getBytes("UTF-8"));

            byte[] md = mdTemp.digest();
            int j = md.length;
            char buf[] = new char[j*2];
            int k = 0;
            for (int i = 0; i < j; i++) {
                byte byte0 = md[i];
                buf[k++] = hexDigits[byte0 >>> 4 & 0xf];
                buf[k++] = hexDigits[byte0 & 0xf];
            }
            signature = new String(buf);
        } catch (Exception e) {
            e.printStackTrace();
        }
        return signature;
    }

}
